package com.xlh.dto.course;

import com.fasterxml.jackson.annotation.JsonIgnore;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.List;

/**
 * 章节基本信息
 * <p>
 * Created by lx on 2019/1/29.
 */
@Data
public class ChapterBasicDTO {

    @ApiModelProperty(value = "课程id")
    private Long courseId;

    @ApiModelProperty(value = "章节id")
    private Long id;

    @ApiModelProperty(value = "章节编号")
    private String number;

    @ApiModelProperty(value = "章节名称")
    private String name;

    @ApiModelProperty(value = "类型 1：理论课 2：实验课 3：理论课及实验课")
    private Integer type;

    @ApiModelProperty(value = "显隐 0 显 1 隐")
    private Integer falg;

    @ApiModelProperty(value = "类型名称")
    private String typeName;

    @ApiModelProperty(value = "简介")
    private String introduction;

    @ApiModelProperty(value = "是否已学习 true：已学习 false：未学习")
    private Boolean studied;

    @ApiModelProperty(value = "其他信息")
    private List<ChapterDTO> otherInfo;

    @ApiModelProperty(value = "层级数量")
    private Integer levels;

    @ApiModelProperty(value = "是否是实验课程标识 true：是")
    private boolean experimentCourseFlag = false;

    @ApiModelProperty(value = "章节")
    private List<ChapterBasicDTO> children;

    @ApiModelProperty(value = "章节id集合")
    private List<Long> chapterIds;

    @JsonIgnore
    @ApiModelProperty(value = "父级id")
    private Long parentId;

    @ApiModelProperty(value = "序号")
    private Integer orderNumber;

    @ApiModelProperty(value = "最近学习标识 0：未学习 1：已学习")
    private Integer recentlyStudiedFlag = 0;

    @ApiModelProperty(value = "步骤类型")
    private String stepTypeStr;

}
